﻿/**
Library: Alternative Transitioning
Author: Valentyn Derkach 2007.07.04
———————————————————————————————————————————————————————————————————————————————————————————————————————————————————
Is the simplest transitioning engine. It is changing the values of the properties directly and that's the idea.
/**/

package com.bizmlib.transitioning
{

	import com.bizmlib.transitioning.*;

	public class TransitionDirectTransform extends Transitioning
	{

		public function TransitionDirectTransform(subject:Object = undefined, properties:Object = undefined, processor:ITweenProcessor = undefined)
		{
			//trace("TransitionDirectTransform(" + arguments + ")");
			super(subject, properties, processor);
			setName("directTransform");
		}

		// ———————————————————————————————————————————————————————————————————————————————————————————————————————————————————
		override protected function transitionIteration():void
		{
			//trace(this + ".transitionIteration(" + arguments + ")");
			
			for(var member in properties){
				subject[member] = processor.performCalculation(String(member), subject[member], properties[member]);
			}
		}
		// ———————————————————————————————————————————————————————————————————————————————————————————————————————————————————

	}
}